전문가 수준의 저장소 이력 은 의도적인 서사이지 우연한 일기장이 아니다. 핵심적으로는 원자 단위의 스냅샷 과 전략적 리베이스를 우선시함으로써 개발자는 시간 축을 검색 가능하고 이해하기 쉬운 문서로 바꾼다.
1. 의도적인 스냅샷으로 커밋하기
대신에 git commit 을 '저장' 버튼처럼 사용하지 말고, 각 항목을 논리적 마일스톤으로 간주하라. 기본 원칙: "프로젝트에 중요한 변경 사항이 있을 때마다 스냅샷을 커밋하라", 그리고 "단 하나의 구체적인 메시지를 생각할 수 없다면 커밋하지 마라."
2. 선형 이상
리베이스 은 다른 브랜치의 최종 지점으로 브랜치를 이동함으로써 파이프라이닝 병합을 가능하게 한다. 이는 병합 커밋의 필요성을 효과적으로 제거하며, 완전히 선형 이력.
3. 규율과 정교화
예를 들어 git commit --amend 은 가장 최근 커밋에 스테이징된 변경 사항을 추가할 수 있게 해준다. 이를 통해 공유 원격 저장소에 푸시하기 전에 실수를 수정함으로써 서사의 무결성을 유지한다.
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>